$(function () {
   
 // 定义模板引擎函数
    template.defaults.imports.dateFormat = function (dtStr) {
        var dt = new Date(dtStr)
        var y = dt.getFullYear()
        var m = dt.getMonth() + 1
        var d = dt.getDate()
        
        var h = dt.getHours()
        var mm = dt.getMinutes()
        var s = dt.getSeconds()
        m = padZero(m)
        d = padZero(d)
        h = padZero(h)
        mm = padZero(mm)
        s= padZero(s)

        return  `${y}-${m}-${d} ${h}:${mm}:${s}`
    }

    function padZero(n) {
        return n <10 ? '0' + n : n
    }
    //获取文章列表
    var q ={
        pagenum: 1,
        pagesize: 3,
        cate_id: '',
        state : ''
    }
 //渲染页面
    initTable()
    function initTable() {
        //发送ajax请求
        $.ajax({
            type: 'get',
            url: '/my/article/list',
            data: q,
            success(res) {
                if (res.status !== 0) {
                   return layui.layer.msg(res.message , {icon : 5})
                }
                //创建模板引擎
                var htmlStr = template('tpl-list', res)
               
                // 渲染模板引擎
                $('tbody').html(htmlStr)
                renderPage(res.total)
            }
        })
    }


    //分页功能
    function renderPage(total) {
        layui.laypage.render({
            elem: 'pageBox',//装页码的容器
            count: total,//数据的总条数
            limit: q.pagesize,//每页显示的条数
            curr: q.pagenum,//当前获取的是几页的数据
            layout : ['next', 'page' , 'prev', 'count' , 'limit'],
            //点击分页是会调用此函数
            limits : [2,4,6,8],
            jump: function (obj, firs) {
                //如果渲染页码用的jump 则不执行里面的代码
                if (firs == true) {
                    return
                }
                q.pagesize=obj.limit
           //修改参数对象
                q.pagenum = obj.curr
                initTable()
            }
        })
    }

    //获取到分类添加到下拉菜单
    initCate()
    function initCate() {
        $.ajax({
            type: 'get',
            url: '/my/article/cates',
            success(res) {
                if (res.status !== 0) {
                   return layui.layer.msg(res.message , {icon :5})
                }
                //调用模板引擎
                var htmlStr = template('tpl-cate', res)
             //添加到下拉表单
                $('[name =cate_id]').html(htmlStr)
                // 手动重新渲染
                layui.form.render()
            }
        })
    }

    //筛选功能
    $('#form-search').on('submit', function (e) {
        e.preventDefault()
        var cate_id = $('[name = cate_id]').val()
        var state = $('[name = state]').val()
        console.log($('[name = cate_id]') );
        q.cate_id = cate_id
        q.state = state
        initTable()
    })

    //删除功能
    $('tbody').on('click', '.btn-delete', function () {
        //获取删除按钮的长度
      var len =  $('.btn-delete').length
        var id = $(this).attr('data-id')
        //询问
        layui.layer.confirm('确定要删除吗', { icon: 3, title: '提示' } ,function (index) {
        
     //发送ajax请求
            $.ajax({
                type: 'get',
                url: '/my/article/delete/' + id,
                success(res) {
                    if (res.status !== 0) {
                        return layui.layer.msg(res.message , {icon : 5})
                    }
                    layui.layer.msg(res.message, { icon: 6 })
                    //判断是否是最后一条数据
                    if (len === 1) {
                    q.pagenum =    q.pagenum === 1 ? 1 : q.pagenum-1
                    }
                    //重新渲染
                    initTable()

                }
            })
            layui.layer.close(index)
        })
    })
    

    //编辑功能
    $('tbody').on('click', '.btn-bjianji', function () {
        var id = $(this).attr('data-id')
         localStorage.setItem('id' , id)
        
        location.href = 'art_edit.html'
    })
          

   
})

